<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Simulador de Sistemas Dinâmicos: Referência do Arquivo funcoes.cpp</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script src="http://www.mathjax.org/mathjax/MathJax.js"></script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">Simulador de Sistemas Dinâmicos
   &#160;<span id="projectnumber">1.0</span>
   </div>
   <div id="projectbrief">Conjunto de códigos utilizados para as simulações da minha dissertação</div>
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Gerado por Doxygen 1.7.6.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Busca');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Página&#160;Principal</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Arquivos</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Busca" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>Lista&#160;de&#160;Arquivos</span></a></li>
      <li><a href="globals.html"><span>Arquivos&#160;Membros</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#func-members">Funções</a>  </div>
  <div class="headertitle">
<div class="title">Referência do Arquivo funcoes.cpp</div>  </div>
</div><!--header-->
<div class="contents">

<p>Implementação das funções definidas no arquivo <a class="el" href="funcoes_8hpp.html" title="Definição de várias funções gerais, preciso organizar melhor ainda.">funcoes.hpp</a>.  
<a href="#details">Mais...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="">funcoes.hpp</a>&quot;</code><br/>
</div>
<p><a href="">Vá para o código-fonte deste arquivo.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="func-members"></a>
Funções</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#ad43ef2eaabab67fea716175982fd05e3">solver</a> (double T0, double TM, <a class="el" href="classvetor.html">vetor</a> X0, double W, double PV, <a class="el" href="classvetor.html">vetor</a>(*F)(double, <a class="el" href="classvetor.html">vetor</a>, double))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Resolve uma EDO.  <a href="#ad43ef2eaabab67fea716175982fd05e3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#a33edb3af9ff3dbb7e2527d2182e0ba90">solverVE</a> (double T0, double TM, <a class="el" href="classvetor.html">vetor</a> X0, double W, double PV, <a class="el" href="classvetor.html">vetor</a>(*F1)(double, <a class="el" href="classvetor.html">vetor</a>, double), <a class="el" href="classmatriz.html">matriz</a>(*F2)(double, <a class="el" href="classvetor.html">vetor</a>, <a class="el" href="classmatriz.html">matriz</a>, double))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Resolve a Equação Variacional.  <a href="#a33edb3af9ff3dbb7e2527d2182e0ba90"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#ab74c9f9d868488c6a9fbef83fa27db72">solverLyap</a> (double T0, double TM, <a class="el" href="classvetor.html">vetor</a> X0, double W, double PV, <a class="el" href="classvetor.html">vetor</a>(*F1)(double, <a class="el" href="classvetor.html">vetor</a>, double), <a class="el" href="classmatriz.html">matriz</a>(*F2)(double, <a class="el" href="classvetor.html">vetor</a>, <a class="el" href="classmatriz.html">matriz</a>, double))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Resolve a Equação Variacional extraindo os expoentes de Lyapunov do sistema.  <a href="#ab74c9f9d868488c6a9fbef83fa27db72"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#a5092e9c0757122d977359e77b80b8cd4">solverDBF</a> (double T0, double TM, <a class="el" href="classvetor.html">vetor</a> X0, double W, double PI, double PF, int S, <a class="el" href="classvetor.html">vetor</a>(*F)(double, <a class="el" href="classvetor.html">vetor</a>, double))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Resolve uma EDO \( S \) vezes, variando o parâmetro variável de \( PI \) a \( PF \).  <a href="#a5092e9c0757122d977359e77b80b8cd4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#a369b864f7af6f22b6394788e2d3ffcd5">RungeKutta4</a> (double H, double &amp;T, <a class="el" href="classvetor.html">vetor</a> &amp;X, double PV, <a class="el" href="classvetor.html">vetor</a>(*F)(double, <a class="el" href="classvetor.html">vetor</a>, double))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Método de Runge-Kutta p/ equações diferenciais ordinárias.  <a href="#a369b864f7af6f22b6394788e2d3ffcd5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#a7e6617df9467bb56f9f7a318dfd2409f">RungeKutta4VE</a> (double H, double &amp;T, <a class="el" href="classvetor.html">vetor</a> &amp;X, <a class="el" href="classmatriz.html">matriz</a> &amp;M, double PV, <a class="el" href="classvetor.html">vetor</a>(*F1)(double, <a class="el" href="classvetor.html">vetor</a>, double), <a class="el" href="classmatriz.html">matriz</a>(*F2)(double, <a class="el" href="classvetor.html">vetor</a>, <a class="el" href="classmatriz.html">matriz</a>, double))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Método de Runge-Kutta p/ equação variacional.  <a href="#a7e6617df9467bb56f9f7a318dfd2409f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#a93df3c0479017d427b9d68988ae2e71a">OPI</a> (const char *pc, int k)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Calcula a distância euclidiana entre pontos da seção de Poincaré  <a href="#a93df3c0479017d427b9d68988ae2e71a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#ae947906c75d56fb268220aa7bd0dd606">kMenor</a> (vector&lt; double &gt; A, vector&lt; double &gt; B, vector&lt; double &gt; C, int k)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Imprime na tela o k-ésimo menor elemento do vector A.  <a href="#ae947906c75d56fb268220aa7bd0dd606"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#a772bd07f5e00f929011dccbecb47e785">qtLin</a> (const char *tmp)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Protótipo da função que retorna a quantidade de linhas de um arquivo txt.  <a href="#a772bd07f5e00f929011dccbecb47e785"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#acdba77a1b686ff7d77d9b09e5f13fccb">Rand</a> (double a, double b)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Protótipo de função que retorna um número pseudo-aleatório no intervalo (a,b)  <a href="#acdba77a1b686ff7d77d9b09e5f13fccb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="funcoes_8cpp.html#a460672a08b996cf448c8ab01199419bb">beep</a> (int a)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Passa a segundos emitindo um bipe.  <a href="#a460672a08b996cf448c8ab01199419bb"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Descrição Detalhada</h2>
<div class="textblock"><p>Implementação das funções definidas no arquivo <a class="el" href="funcoes_8hpp.html" title="Definição de várias funções gerais, preciso organizar melhor ainda.">funcoes.hpp</a>. </p>
<dl class="author"><dt><b>Autor:</b></dt><dd>Geraldo Francisco de S. Rebouças | <a href="mailto:gfs.reboucas@gmail.com">gfs.reboucas@gmail.com</a> </dd></dl>
<dl class="since"><dt><b>Desde:</b></dt><dd>01/12/2012 </dd></dl>
<dl class="version"><dt><b>Versão:</b></dt><dd>1.0 </dd></dl>
<dl class="date"><dt><b>Data:</b></dt><dd>02/12/2012 </dd></dl>

<p>Definição no arquivo <a class="el" href="">funcoes.cpp</a>.</p>
</div><hr/><h2>Funções</h2>
<a class="anchor" id="a460672a08b996cf448c8ab01199419bb"></a><!-- doxytag: member="funcoes.cpp::beep" ref="a460672a08b996cf448c8ab01199419bb" args="(int a)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="funcoes_8hpp.html#a460672a08b996cf448c8ab01199419bb">beep</a> </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Passa a segundos emitindo um bipe. </p>
<dl class="params"><dt><b>Parâmetros:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">a</td><td>Recebe a quantidade de tempo que o beep durará </td></tr>
  </table>
  </dd>
</dl>

<p>Definição na linha <a class="el" href="#L350">350</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ae947906c75d56fb268220aa7bd0dd606"></a><!-- doxytag: member="funcoes.cpp::kMenor" ref="ae947906c75d56fb268220aa7bd0dd606" args="(vector&lt; double &gt; A, vector&lt; double &gt; B, vector&lt; double &gt; C, int k)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="funcoes_8hpp.html#aea1b6c1a3fa557c67049bc9e02c9d31a">kMenor</a> </td>
          <td>(</td>
          <td class="paramtype">vector&lt; double &gt;&#160;</td>
          <td class="paramname"><em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vector&lt; double &gt;&#160;</td>
          <td class="paramname"><em>B</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vector&lt; double &gt;&#160;</td>
          <td class="paramname"><em>C</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>k</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Imprime na tela o k-ésimo menor elemento do vector A. </p>
<p><a href="http://blog.teamleadnet.com/2012/07/quick-select-algorithm-find-kth-element.html">http://blog.teamleadnet.com/2012/07/quick-select-algorithm-find-kth-element.html</a> - Adam Horvath</p>
<p>se a == b alcançamos o k-ésimo elemento</p>
<p>para se c e d coincidirem</p>
<p>coloca o maior valor no fim</p>
<p>parte que eu preciso ajeitar p o algoritmo das OPIS</p>
<p>parte que eu preciso ajeitar p o algoritmo das OPIS</p>
<p>parte que eu preciso ajeitar p o algoritmo das OPIS</p>
<p>o valor é maior do que o pivô, não importa</p>
<p>se passamos direto (c++) precisamos retornar</p>
<p>o ponteiro c está no final dos primeiros k elementos </p>

<p>Definição na linha <a class="el" href="#L277">277</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a93df3c0479017d427b9d68988ae2e71a"></a><!-- doxytag: member="funcoes.cpp::OPI" ref="a93df3c0479017d427b9d68988ae2e71a" args="(const char *pc, int k)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="funcoes_8hpp.html#a93df3c0479017d427b9d68988ae2e71a">OPI</a> </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>pc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>k</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Calcula a distância euclidiana entre pontos da seção de Poincaré </p>
<dl class="params"><dt><b>Parâmetros:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pc</td><td>Recebe o arquivo de texto contendo os pontos da seção de Poincaré </td></tr>
    <tr><td class="paramname">k</td><td>Recebe o valor do período desejado </td></tr>
  </table>
  </dd>
</dl>

<p>Definição na linha <a class="el" href="#L237">237</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a772bd07f5e00f929011dccbecb47e785"></a><!-- doxytag: member="funcoes.cpp::qtLin" ref="a772bd07f5e00f929011dccbecb47e785" args="(const char *tmp)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="funcoes_8hpp.html#a772bd07f5e00f929011dccbecb47e785">qtLin</a> </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>tmp</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Protótipo da função que retorna a quantidade de linhas de um arquivo txt. </p>
<dl class="params"><dt><b>Parâmetros:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">tmp</td><td>Recebe o nome do arquivo de texto </td></tr>
  </table>
  </dd>
</dl>

<p>Definição na linha <a class="el" href="#L330">330</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="acdba77a1b686ff7d77d9b09e5f13fccb"></a><!-- doxytag: member="funcoes.cpp::Rand" ref="acdba77a1b686ff7d77d9b09e5f13fccb" args="(double a, double b)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="funcoes_8hpp.html#acdba77a1b686ff7d77d9b09e5f13fccb">Rand</a> </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Protótipo de função que retorna um número pseudo-aleatório no intervalo (a,b) </p>

<p>Definição na linha <a class="el" href="#L344">344</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a369b864f7af6f22b6394788e2d3ffcd5"></a><!-- doxytag: member="funcoes.cpp::RungeKutta4" ref="a369b864f7af6f22b6394788e2d3ffcd5" args="(double H, double &amp;T, vetor &amp;X, double PV, vetor(*F)(double, vetor, double))" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="funcoes_8hpp.html#a369b864f7af6f22b6394788e2d3ffcd5">RungeKutta4</a> </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>H</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double &amp;&#160;</td>
          <td class="paramname"><em>T</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a> &amp;&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>PV</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a>(*)(double, <a class="el" href="classvetor.html">vetor</a>, double)&#160;</td>
          <td class="paramname"><em>F</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Método de Runge-Kutta p/ equações diferenciais ordinárias. </p>
<dl class="params"><dt><b>Parâmetros:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">H</td><td>Recebe o valor do passo de integração </td></tr>
    <tr><td class="paramname">T</td><td>Recebe o valor da variável independente </td></tr>
    <tr><td class="paramname">X</td><td>Recebe o vetor de estados </td></tr>
    <tr><td class="paramname">PV</td><td>Recebe o parâmetro que desejamos variar durante as simulações, muito útil quando traçamos o diagrama de bifurcação do sistema </td></tr>
    <tr><td class="paramname">F</td><td>Recebe a função que representa a EDO a ser resolvida </td></tr>
  </table>
  </dd>
</dl>

<p>Definição na linha <a class="el" href="#L190">190</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a7e6617df9467bb56f9f7a318dfd2409f"></a><!-- doxytag: member="funcoes.cpp::RungeKutta4VE" ref="a7e6617df9467bb56f9f7a318dfd2409f" args="(double H, double &amp;T, vetor &amp;X, matriz &amp;M, double PV, vetor(*F1)(double, vetor, double), matriz(*F2)(double, vetor, matriz, double))" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="funcoes_8hpp.html#a7e6617df9467bb56f9f7a318dfd2409f">RungeKutta4VE</a> </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>H</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double &amp;&#160;</td>
          <td class="paramname"><em>T</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a> &amp;&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmatriz.html">matriz</a> &amp;&#160;</td>
          <td class="paramname"><em>M</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>PV</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a>(*)(double, <a class="el" href="classvetor.html">vetor</a>, double)&#160;</td>
          <td class="paramname"><em>F1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmatriz.html">matriz</a>(*)(double, <a class="el" href="classvetor.html">vetor</a>, <a class="el" href="classmatriz.html">matriz</a>, double)&#160;</td>
          <td class="paramname"><em>F2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Método de Runge-Kutta p/ equação variacional. </p>

<p>Definição na linha <a class="el" href="#L208">208</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ad43ef2eaabab67fea716175982fd05e3"></a><!-- doxytag: member="funcoes.cpp::solver" ref="ad43ef2eaabab67fea716175982fd05e3" args="(double T0, double TM, vetor X0, double W, double PV, vetor(*F)(double, vetor, double))" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="funcoes_8hpp.html#ad43ef2eaabab67fea716175982fd05e3">solver</a> </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>T0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>TM</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a>&#160;</td>
          <td class="paramname"><em>X0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>W</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>PV</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a>(*)(double, <a class="el" href="classvetor.html">vetor</a>, double)&#160;</td>
          <td class="paramname"><em>F</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resolve uma EDO. </p>
<dl class="params"><dt><b>Parâmetros:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">T0</td><td>Recebe o valor inicial da variável independente, normalmente o tempo </td></tr>
    <tr><td class="paramname">TM</td><td>Recebe o valor final da variável independente </td></tr>
    <tr><td class="paramname">X0</td><td>Recebe o vetor de estados iniciais </td></tr>
    <tr><td class="paramname">W</td><td>Recebe a frequência da excitação senoidal e com ele calcula o passo de integração </td></tr>
    <tr><td class="paramname">PV</td><td>Recebe o parâmetro que desejamos variar durante as simulações, muito útil quando traçamos o diagrama de bifurcação do sistema </td></tr>
    <tr><td class="paramname">F</td><td>Recebe a função que representa a EDO a ser resolvida</td></tr>
  </table>
  </dd>
</dl>
<p>para que PCR.txt renda uma boa imagem, deverá ter 1Mb de tamanho, ou 3*1e4 pontos. Isso equivale a k*1e3*(3*1e4) iterações</p>
<p>k = 0.5 (vide comentario do arquivo PCR.txt) </p>

<p>Definição na linha <a class="el" href="#L10">10</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a5092e9c0757122d977359e77b80b8cd4"></a><!-- doxytag: member="funcoes.cpp::solverDBF" ref="a5092e9c0757122d977359e77b80b8cd4" args="(double T0, double TM, vetor X0, double W, double PI, double PF, int S, vetor(*F)(double, vetor, double))" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="funcoes_8hpp.html#a5092e9c0757122d977359e77b80b8cd4">solverDBF</a> </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>T0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>TM</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a>&#160;</td>
          <td class="paramname"><em>X0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>W</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>PI</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>PF</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>S</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a>(*)(double, <a class="el" href="classvetor.html">vetor</a>, double)&#160;</td>
          <td class="paramname"><em>F</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resolve uma EDO \( S \) vezes, variando o parâmetro variável de \( PI \) a \( PF \). </p>
<dl class="params"><dt><b>Parâmetros:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">T0</td><td>Recebe o valor inicial da variável independente, normalmente o tempo </td></tr>
    <tr><td class="paramname">TM</td><td>Recebe o valor final da variável independente </td></tr>
    <tr><td class="paramname">X0</td><td>Recebe o vetor de estados iniciais </td></tr>
    <tr><td class="paramname">W</td><td>Recebe a frequência da excitação senoidal e com ele calcula o passo de integração </td></tr>
    <tr><td class="paramname">PI</td><td>Recebe o valor inicial parâmetro que desejamos variar durante as simulações </td></tr>
    <tr><td class="paramname">PF</td><td>Recebe o valor final parâmetro que desejamos variar durante as simulações </td></tr>
    <tr><td class="paramname">S</td><td>Recebe a quantidade de iterações a serem simuladas variando PV </td></tr>
    <tr><td class="paramname">F</td><td>Recebe a função que representa a EDO a ser resolvida </td></tr>
  </table>
  </dd>
</dl>

<p>Definição na linha <a class="el" href="#L154">154</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ab74c9f9d868488c6a9fbef83fa27db72"></a><!-- doxytag: member="funcoes.cpp::solverLyap" ref="ab74c9f9d868488c6a9fbef83fa27db72" args="(double T0, double TM, vetor X0, double W, double PV, vetor(*F1)(double, vetor, double), matriz(*F2)(double, vetor, matriz, double))" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="funcoes_8hpp.html#ab74c9f9d868488c6a9fbef83fa27db72">solverLyap</a> </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>T0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>TM</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a>&#160;</td>
          <td class="paramname"><em>X0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>W</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>PV</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a>(*)(double, <a class="el" href="classvetor.html">vetor</a>, double)&#160;</td>
          <td class="paramname"><em>F1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmatriz.html">matriz</a>(*)(double, <a class="el" href="classvetor.html">vetor</a>, <a class="el" href="classmatriz.html">matriz</a>, double)&#160;</td>
          <td class="paramname"><em>F2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resolve a Equação Variacional extraindo os expoentes de Lyapunov do sistema. </p>
<dl class="params"><dt><b>Parâmetros:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">T0</td><td>Recebe o valor inicial da variável independente, normalmente o tempo </td></tr>
    <tr><td class="paramname">TM</td><td>Recebe o valor final da variável independente </td></tr>
    <tr><td class="paramname">X0</td><td>Recebe o vetor de estados iniciais </td></tr>
    <tr><td class="paramname">W</td><td>Recebe a frequência da excitação senoidal e com ele calcula o passo de integração </td></tr>
    <tr><td class="paramname">PV</td><td>Recebe o parâmetro que desejamos variar durante as simulações, muito útil quando traçamos o diagrama de bifurcação do sistema </td></tr>
    <tr><td class="paramname">F1</td><td>Recebe a função que representa a EDO associada a equação variacional </td></tr>
    <tr><td class="paramname">F2</td><td>Recebe a função que representa a Equação variacional </td></tr>
  </table>
  </dd>
</dl>

<p>Definição na linha <a class="el" href="#L88">88</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a33edb3af9ff3dbb7e2527d2182e0ba90"></a><!-- doxytag: member="funcoes.cpp::solverVE" ref="a33edb3af9ff3dbb7e2527d2182e0ba90" args="(double T0, double TM, vetor X0, double W, double PV, vetor(*F1)(double, vetor, double), matriz(*F2)(double, vetor, matriz, double))" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="funcoes_8hpp.html#a33edb3af9ff3dbb7e2527d2182e0ba90">solverVE</a> </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>T0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>TM</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a>&#160;</td>
          <td class="paramname"><em>X0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>W</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>PV</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classvetor.html">vetor</a>(*)(double, <a class="el" href="classvetor.html">vetor</a>, double)&#160;</td>
          <td class="paramname"><em>F1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmatriz.html">matriz</a>(*)(double, <a class="el" href="classvetor.html">vetor</a>, <a class="el" href="classmatriz.html">matriz</a>, double)&#160;</td>
          <td class="paramname"><em>F2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resolve a Equação Variacional. </p>
<dl class="params"><dt><b>Parâmetros:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">T0</td><td>Recebe o valor inicial da variável independente, normalmente o tempo </td></tr>
    <tr><td class="paramname">TM</td><td>Recebe o valor final da variável independente </td></tr>
    <tr><td class="paramname">X0</td><td>Recebe o vetor de estados iniciais </td></tr>
    <tr><td class="paramname">W</td><td>Recebe a frequência da excitação senoidal e com ele calcula o passo de integração </td></tr>
    <tr><td class="paramname">PV</td><td>Recebe o parâmetro que desejamos variar durante as simulações, muito útil quando traçamos o diagrama de bifurcação do sistema </td></tr>
    <tr><td class="paramname">F1</td><td>Recebe a função que representa a EDO associada a equação variacional </td></tr>
    <tr><td class="paramname">F2</td><td>Recebe a função que representa a Equação variacional </td></tr>
  </table>
  </dd>
</dl>

<p>Definição na linha <a class="el" href="#L58">58</a> do arquivo <a class="el" href="">funcoes.cpp</a>.</p>

</div>
</div>
</div><!-- contents -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>Todos</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Arquivos</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Funções</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variáveis</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Definições e Macros</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>



<hr class="footer"/><address class="footer"><small>
Gerado em Quinta, 20 de Dezembro de 2012 17:25:39 para Simulador de Sistemas Dinâmicos por &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>

</body>
</html>
